package com.school.service;

import com.school.entity.Student;
import java.util.List;
import java.util.Optional;

public interface StudentService {
    List<Student> findAll();
    
    Optional<Student> findById(Long id);
    
    Optional<Student> findByStudentId(String studentId);
    
    List<Student> findByClassId(Long classId);
    
    List<Student> search(Long classId, String keyword);
    
    Student save(Student student);
    
    void deleteById(Long id);
    
    void deleteByStudentId(String studentId);
    
    /**
     * 创建学生的同时创建对应的用户账号
     * @param student 学生信息
     * @return 保存后的学生信息
     */
    Student createStudentWithUser(Student student);
}
